Technical Q&A QD64
ATSUI and MLTE Printing



Q: 現在、プリンタドライバを書いています。ただ、このドライバを使用すると、ATSUI (たとえば、ATSUDrawText) や MLTE (たとえば、TXNDrawUnicodeTextBox) を使って描画したテキストがうまく印刷されません。他のプリンタドライバを使用すると、うまく印刷できるのですが、問題の原因はどこにあるのですか。私は QuickDraw ボトルネックをすべて独自のコードに置き換えていますが、置き換えたボトルネックのいずれもがテキストを描画するために呼び出されるものではありません。

A: ATSUI と MLTE はローレベルフラグを拠り所にして、StdPix QuickDraw ボトルネックを使用するかどうかを通知します。現在、印刷を行っている場合、ATSUI と MLTE はこのボトルネックを使用します。MLTE と ATSUI に印刷を行っていることを知らせるには、リスト 1 に示したマクロを使用してください。

リスト 1 ATSUI と MLTE によって使用される印刷フラグのオン/オフを切り替えるマクロ

    #define setPrinting() {*((short *)0x948) = 0;}
    #define clearPrinting() {*((short *)0x948) = -1;}
                           




更新日: 2000 年 11 月 8 日